Load "Extras:Sprite_600/Fantasy/Mario.abk" : Hide : Curs Off : Get Bob 15,0,0 To 320,25 : Flash Off : For I=1 To 3 : Get Bob 11+I,0,0 To I*20,9 : Next : Colour 4,0 : Paper 0 : Cls : Ink 11 : Bar 5,6 To 7,12 : Ink 6 : Circle 6,1,4 : Paint 6,2
Get Bob 11,2,0 To 11,13 : Ink 4,0 : Set Pattern 2 : Paper 0 : Pen 15 : For I=1 To 4 : Clw : R=(I+1)^2 : Circle 30,30,R : Paint 30,30 : Get Bob 6+I,30-R,30-R To 31+R,31+R : Next : Double Buffer : Synchro Off : D$="IX<-200JEIX>520JD"
E$="D:LX=-200JLE:LX=520JL" : S$="L:LX=X+RA"+D$+"PJL"+E$ : For I=1 To 14 : Hot Spot I,18 : Next : Pen 10 : Get Sprite Palette : B$="LR0=AL:LR3=R3+1LA=R0IY>145|BC(R2,4,12)JC"+D$+"M:LX=X+R4+RALY=Y+R3PJLC:LR3=1-R3JM"+E$ : G$="A:IJ1-16<0JALX=160"
M$=M$+"LR4=R4+1P;LR5=Y>150LR3=R4>-1IBC(1,4,12)&R3|R5JWJVW:LY=Y/50*50JL" : Do : Clw : M=3 : Repeat : Amreg(0)=-800 : Synchro : Amal Off : Bob 3,0,150,15 : Bob 1,160,150,3 : Channel 1 To Bob 1 : Amal 1,M$ : Bob 2,0,-99,11 : Channel 2 To Bob 2
Amal 2,G$ : D=0 : If Z=0 : Inc L : Colour 4,15^(Rnd(6)+1) : End If : N=13+(L-1) mod 4 : Z=(N-12)*15 : T=2019-(L-1)/4*400+(N-13)*600 : For I=13 To N : Bob I,Rnd(720)-200,Rnd(40)+40,10 : Channel I To Bob I : Amal I,B$ : Amreg(I,2)=I
Amreg(I,4)=((Rnd(1)*2)-1)*(Rnd(1)+1) : Next : For I=4 To 12 : Bob I,Rnd(720)-200,108-Rnd(1)*50,Rnd(2)+12 : Channel I To Bob I : Amal I,S$ : Next : Amal On : Repeat : Autoback 0 : Print At(1,22);"Level:";L;" Men:";M;" Score:";S;" Time:";T/20;" "
Autoback 2 : Amreg(1)=Jup(1) : Amreg(0)=(Jright(1)-Jleft(1))*4 : If Fire(1) and Amreg(2,0)<3 : Shoot : End If : If Bob Col(2,13 To N) : For I=13 To N : If Col(I) : A=Amreg(I,0) : Dec A : If A<7 : Bob Off I : Add S,50 Else
Amreg(I,0)=A : Inc N : Channel N To Bob N : Bob N,X Bob(I),Y Bob(I),A : Amal N,B$ : Amreg(N,4)=-Amreg(I,4) : Amreg(N,2)=N : Amreg(N,3)=Amreg(I,3) : Amal On N : Add S,10 : End If : I=N : Amreg(2,0)=40 : Bell 63 : Dec Z : End If : Next
End If : If Bob Col(1,13 To N) or T=0 : Boom : Dec M : D=1 : End If : Wait Vbl : Synchro : Dec T : Until D or Z=0 : If Z=0 : Add S,T/2 : End If : Wait 50 : Until M<0 : Print At(16,10);"GAME OVER" : Wait Key : S=0 : L=0 : Z=0 : Loop